

#include "Shape.h"
#include "Maths.h"
#include "Containers.h"

namespace ouden {

namespace physics {

class CSolid
{
	
public:
	
	void doIntegration(Scalar timeStep);
	
	Vector getPos() 		{ return m_vPos; }
	Scalar getAngle() 		{ return m_fAngle; }
	
private:
	
	//Linear physics variables
	Vector m_vPos, m_vVel, m_vForce;
	Scalar m_fMass;
	
	//Angular physics variables
	Scalar m_fAngle, m_fAngVel, m_fTorque;
	Scalar m_fInertiaMoment;
	
	//Array of shapes that form the colliding region of the solid
	Array<CShape*> m_pShapes;
	
};

} //namespace physics

} //namespace ouden
